package com.shujia.day11;

import java.util.Iterator;
import java.util.LinkedList;

public class Code05LinkedList {
    public static void main(String[] args) {
        /*
            LinkedList:
                底层数据结构是链表，查询慢，增删快
                线程不安全，效率高
         */

        LinkedList linkedList = new LinkedList();

        linkedList.add("hello"); // 添加数据
        linkedList.add("world");
        linkedList.add("java");

        linkedList.add(2,"python");

        linkedList.addLast("last");
        linkedList.addFirst("first");





        System.out.println("==============");
        // 获取数据
        System.out.println(linkedList.get(1));
        System.out.println(linkedList.getLast());
        System.out.println(linkedList.getFirst());


        System.out.println(linkedList.removeFirst()); // 将开头的数据取出 并返回其值
        System.out.println(linkedList.removeLast()); // 将末尾的数据取出 并返回其值


        //遍历数据
        // 方式1：增强for
        for (Object o : linkedList) {
            System.out.println(o);
        }

        // 方式2：
        System.out.println("==============");
        Iterator iterator = linkedList.iterator();
        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }





    }
}
